

<!DOCTYPE html>
<html lang="zh-CN" data-default-color-scheme=auto>



<head>
  <meta charset="UTF-8">
  <link rel="apple-touch-icon" sizes="76x76" href="/img/fluid.png">
  <link rel="icon" href="/img/fluid.png">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, shrink-to-fit=no">
  <meta http-equiv="x-ua-compatible" content="ie=edge">
  
  <meta name="theme-color" content="#2f4154">
  <meta name="author" content="John Doe">
  <meta name="keywords" content="">
  
    <meta name="description" content="@[toc]参考文档：官方文档 使用版本：ArangoDB v3.9.2 一、ArangoDB 简介 ArangoDB是一个本地多模型数据库，具有针对文档、图形和键值的灵活数据模型。使用方便的类似SQL的查询语言或JavaScript扩展构建高性能应用程序。 特点：  使用方便，类SQL语言或JavaScript 扩展构建高性能应用程序。 支持 ACID 事务 只需要点击鼠标即可实现水平和垂直缩放">
<meta property="og:type" content="article">
<meta property="og:title" content="ArangoDB 笔记1 简介 _ ArangoDB 数据模型和概念 _ ArangoDB在Windows下的安装与使用 _ Web界面的增删改查">
<meta property="og:url" content="http://example.com/2022/07/13/ArangoDB%20%E7%AC%94%E8%AE%B01%20%E7%AE%80%E4%BB%8B%20_%20ArangoDB%20%E6%95%B0%E6%8D%AE%E6%A8%A1%E5%9E%8B%E5%92%8C%E6%A6%82%E5%BF%B5%20_%20ArangoDB%E5%9C%A8Windows%E4%B8%8B%E7%9A%84%E5%AE%89%E8%A3%85%E4%B8%8E%E4%BD%BF%E7%94%A8%20_%20Web%E7%95%8C%E9%9D%A2%E7%9A%84%E5%A2%9E%E5%88%A0%E6%94%B9%E6%9F%A5/index.html">
<meta property="og:site_name" content="Hexo">
<meta property="og:description" content="@[toc]参考文档：官方文档 使用版本：ArangoDB v3.9.2 一、ArangoDB 简介 ArangoDB是一个本地多模型数据库，具有针对文档、图形和键值的灵活数据模型。使用方便的类似SQL的查询语言或JavaScript扩展构建高性能应用程序。 特点：  使用方便，类SQL语言或JavaScript 扩展构建高性能应用程序。 支持 ACID 事务 只需要点击鼠标即可实现水平和垂直缩放">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="https://img-blog.csdnimg.cn/fd23fa9268ce4979ab396781f25604ea.png">
<meta property="og:image" content="https://img-blog.csdnimg.cn/dc5f4f5dd033416c9b6278656a582de8.png">
<meta property="og:image" content="https://img-blog.csdnimg.cn/6d24883b7d174d929c24215916ce9db1.png">
<meta property="og:image" content="https://img-blog.csdnimg.cn/7f9dd83f8e3c4b68b7d1762ff0cc6789.png">
<meta property="og:image" content="https://img-blog.csdnimg.cn/1ee7cbc65cc14d1089d44d44e49763de.png">
<meta property="og:image" content="https://img-blog.csdnimg.cn/f5fbc9f083094003b5af019c764259dc.gif#pic_center">
<meta property="og:image" content="https://img-blog.csdnimg.cn/4ea338b50c7e4507ab1310d78c791ff5.gif#pic_center">
<meta property="article:published_time" content="2022-07-13T07:53:50.000Z">
<meta property="article:modified_time" content="2022-08-22T15:42:24.029Z">
<meta property="article:author" content="John Doe">
<meta property="article:tag" content="ArangoDB">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:image" content="https://img-blog.csdnimg.cn/fd23fa9268ce4979ab396781f25604ea.png">
  
  
  
  <title>ArangoDB 笔记1 简介 _ ArangoDB 数据模型和概念 _ ArangoDB在Windows下的安装与使用 _ Web界面的增删改查 - Hexo</title>

  <link  rel="stylesheet" href="https://lib.baomitu.com/twitter-bootstrap/4.6.1/css/bootstrap.min.css" />



  <link  rel="stylesheet" href="https://lib.baomitu.com/github-markdown-css/4.0.0/github-markdown.min.css" />

  <link  rel="stylesheet" href="https://lib.baomitu.com/hint.css/2.7.0/hint.min.css" />

  <link  rel="stylesheet" href="https://lib.baomitu.com/fancybox/3.5.7/jquery.fancybox.min.css" />



<!-- 主题依赖的图标库，不要自行修改 -->
<!-- Do not modify the link that theme dependent icons -->

<link rel="stylesheet" href="//at.alicdn.com/t/font_1749284_hj8rtnfg7um.css">



<link rel="stylesheet" href="//at.alicdn.com/t/font_1736178_lbnruvf0jn.css">


<link  rel="stylesheet" href="/css/main.css" />


  <link id="highlight-css" rel="stylesheet" href="/css/highlight.css" />
  
    <link id="highlight-css-dark" rel="stylesheet" href="/css/highlight-dark.css" />
  




  <script id="fluid-configs">
    var Fluid = window.Fluid || {};
    Fluid.ctx = Object.assign({}, Fluid.ctx)
    var CONFIG = {"hostname":"example.com","root":"/","version":"1.9.2","typing":{"enable":true,"typeSpeed":70,"cursorChar":"_","loop":false,"scope":[]},"anchorjs":{"enable":true,"element":"h1,h2,h3,h4,h5,h6","placement":"left","visible":"hover","icon":""},"progressbar":{"enable":true,"height_px":3,"color":"#29d","options":{"showSpinner":false,"trickleSpeed":100}},"code_language":{"enable":true,"default":"TEXT"},"copy_btn":true,"image_caption":{"enable":true},"image_zoom":{"enable":true,"img_url_replace":["",""]},"toc":{"enable":true,"placement":"right","headingSelector":"h1,h2,h3,h4,h5,h6","collapseDepth":0},"lazyload":{"enable":true,"loading_img":"/img/loading.gif","onlypost":false,"offset_factor":2},"web_analytics":{"enable":false,"follow_dnt":true,"baidu":null,"google":null,"gtag":null,"tencent":{"sid":null,"cid":null},"woyaola":null,"cnzz":null,"leancloud":{"app_id":null,"app_key":null,"server_url":null,"path":"window.location.pathname","ignore_local":false}},"search_path":"/local-search.xml"};

    if (CONFIG.web_analytics.follow_dnt) {
      var dntVal = navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack;
      Fluid.ctx.dnt = dntVal && (dntVal.startsWith('1') || dntVal.startsWith('yes') || dntVal.startsWith('on'));
    }
  </script>
  <script  src="/js/utils.js" ></script>
  <script  src="/js/color-schema.js" ></script>
  


  
<meta name="generator" content="Hexo 6.2.0"></head>


<body>
  

  <header>
    

<div class="header-inner" style="height: 70vh;">
  <nav id="navbar" class="navbar fixed-top  navbar-expand-lg navbar-dark scrolling-navbar">
  <div class="container">
    <a class="navbar-brand" href="/">
      <strong>尤 Ni&#39;s Blog</strong>
    </a>

    <button id="navbar-toggler-btn" class="navbar-toggler" type="button" data-toggle="collapse"
            data-target="#navbarSupportedContent"
            aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
      <div class="animated-icon"><span></span><span></span><span></span></div>
    </button>

    <!-- Collapsible content -->
    <div class="collapse navbar-collapse" id="navbarSupportedContent">
      <ul class="navbar-nav ml-auto text-center">
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/">
                <i class="iconfont icon-home-fill"></i>
                首页
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/archives/">
                <i class="iconfont icon-archive-fill"></i>
                归档
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/categories/">
                <i class="iconfont icon-category-fill"></i>
                分类
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/tags/">
                <i class="iconfont icon-tags-fill"></i>
                标签
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/about/">
                <i class="iconfont icon-user-fill"></i>
                关于
              </a>
            </li>
          
        
        
          <li class="nav-item" id="search-btn">
            <a class="nav-link" target="_self" href="javascript:;" data-toggle="modal" data-target="#modalSearch" aria-label="Search">
              &nbsp;<i class="iconfont icon-search"></i>&nbsp;
            </a>
          </li>
          
        
        
          <li class="nav-item" id="color-toggle-btn">
            <a class="nav-link" target="_self" href="javascript:;" aria-label="Color Toggle">&nbsp;<i
                class="iconfont icon-dark" id="color-toggle-icon"></i>&nbsp;</a>
          </li>
        
      </ul>
    </div>
  </div>
</nav>

  

<div id="banner" class="banner" parallax=true
     style="background: url('/img/default.png') no-repeat center center; background-size: cover;">
  <div class="full-bg-img">
    <div class="mask flex-center" style="background-color: rgba(0, 0, 0, 0.3)">
      <div class="banner-text text-center fade-in-up">
        <div class="h2">
          
            <span id="subtitle" data-typed-text="ArangoDB 笔记1 简介 _ ArangoDB 数据模型和概念 _ ArangoDB在Windows下的安装与使用 _ Web界面的增删改查"></span>
          
        </div>

        
          
  <div class="mt-3">
    
      <span class="post-meta mr-2">
        <i class="iconfont icon-author" aria-hidden="true"></i>
        John Doe
      </span>
    
    
      <span class="post-meta">
        <i class="iconfont icon-date-fill" aria-hidden="true"></i>
        <time datetime="2022-07-13 15:53" pubdate>
          2022年7月13日 下午
        </time>
      </span>
    
  </div>

  <div class="mt-1">
    
      <span class="post-meta mr-2">
        <i class="iconfont icon-chart"></i>
        
          4.3k 字
        
      </span>
    

    
      <span class="post-meta mr-2">
        <i class="iconfont icon-clock-fill"></i>
        
        
        
          37 分钟
        
      </span>
    

    
    
  </div>


        
      </div>

      
    </div>
  </div>
</div>

</div>

  </header>

  <main>
    
      

<div class="container-fluid nopadding-x">
  <div class="row nomargin-x">
    <div class="side-col d-none d-lg-block col-lg-2">
      

    </div>

    <div class="col-lg-8 nopadding-x-md">
      <div class="container nopadding-x-md" id="board-ctn">
        <div id="board">
          <article class="post-content mx-auto">
            <!-- SEO header -->
            <h1 style="display: none">ArangoDB 笔记1 简介 _ ArangoDB 数据模型和概念 _ ArangoDB在Windows下的安装与使用 _ Web界面的增删改查</h1>
            
              <p class="note note-info">
                
                  
                    本文最后更新于：1 小时前
                  
                
              </p>
            
            
              <div class="markdown-body">
                
                <p>@[toc]<br>参考文档：<a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/index.html">官方文档</a></p>
<p>使用版本：ArangoDB v3.9.2</p>
<h1 id="一、ArangoDB-简介"><a href="#一、ArangoDB-简介" class="headerlink" title="一、ArangoDB 简介"></a>一、ArangoDB 简介</h1><hr>
<p>ArangoDB是一个本地多模型数据库，具有针对文档、图形和键值的灵活数据模型。使用方便的类似SQL的查询语言或JavaScript扩展构建高性能应用程序。</p>
<p>特点：</p>
<ul>
<li>使用方便，类SQL语言或JavaScript 扩展构建高性能应用程序。</li>
<li>支持 ACID 事务</li>
<li>只需要点击鼠标即可实现水平和垂直缩放</li>
<li>支持集群，且安装方便，就像在手机上安装应用程序</li>
<li>灵活的数据模型，数据建模支持键值对、文档护图标的组合。（适合社交关系）</li>
<li>高吞吐量</li>
<li>支持复制和分片，在活动故障转移配置中设置备份的数据库，或将更大的数据集分布在多个服务器上</li>
<li>可配置的持久性：让应用程序决定是否需要更高的持久性或更高的性能</li>
<li>No-nonsense 存储，使用现代存储硬件的所有功能，如 SSD 和 内存缓存</li>
<li>支持 JavaScript 语言运用在前端和后端。</li>
</ul>
<h1 id="二、ArangoDB-数据模型和概念"><a href="#二、ArangoDB-数据模型和概念" class="headerlink" title="二、ArangoDB 数据模型和概念"></a>二、ArangoDB 数据模型和概念</h1><hr>
<p>参考文档：<a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/data-modeling-concepts.html">官方文档</a></p>
<p>ArangoDB 是一个为用户提供文档的数据库。这些文档通过 TCP 连接使用 JSON 传输，使用 HTTP 协议。提供了一套 REST API 来与数据库系统进行交互。</p>
<h2 id="2-1-ArangoDB的数据库交互"><a href="#2-1-ArangoDB的数据库交互" class="headerlink" title="2.1 ArangoDB的数据库交互"></a>2.1 ArangoDB的数据库交互</h2><p>ArangoDB 的组成：<a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/drivers/index.html">参考文档</a></p>
<ul>
<li>arangodb，提供可连接、可交互的 ArangoDB服务器</li>
<li>Aardvark，Web界面，提供易于使用的图形用户界面。</li>
<li>Arangosh，交互式Shell</li>
<li>第三方驱动，Java、JavaScript、PHP、GO、C# 等 ，更多可参考<br><a name="ZbtdS"></a></li>
</ul>
<h2 id="2-2-ArangoDB的数据模型"><a href="#2-2-ArangoDB的数据模型" class="headerlink" title="2.2 ArangoDB的数据模型"></a>2.2 ArangoDB的数据模型</h2><p>参考资料：<a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/getting-started-databases-collections-documents.html">参考文档</a></p>
<p>ArangoDB 数据模型主要有 Databases，Collections 和 Documents ，还有Graph（将下次学习中详细记录）。</p>
<h3 id="2-2-1-文档-Documents"><a href="#2-2-1-文档-Documents" class="headerlink" title="2.2.1 文档 Documents"></a>2.2.1 文档 Documents</h3><p>文档（Documents）可被认为是表中的行。相比 RDBMS，ArangoDB中的文档并不会预先定义有哪些列（即属性）。<br />任何集合中的每个文档都可以具有任意属性键值对。</p>
<blockquote>
<p>单个集合中的文档在实践中可能具有类似的结构，但数据库系统本身不会去加强，并且无论数据是怎样的，ArangoDB提供的机制都会保证文档稳定且快速地运行。</p>
</blockquote>
<p>ArangoDB 中的文档严格遵循 JSON 格式，底层则是使用 VelockPack框架进行二进制格式的存储。<br />文档的其他存储特点：</p>
<ul>
<li>一个文档包含 零个或多个属性，每个属性都有对应的值</li>
<li>值的类型可以是一些原子类型，比如 number、string、boolean 或 null</li>
<li>值的类型也可以是一些复合类型，即 array 或 document &#x2F; object</li>
<li>单个文档中可以表示任意嵌套的数据结构</li>
</ul>
<h3 id="2-2-2-集合-Collections"><a href="#2-2-2-集合-Collections" class="headerlink" title="2.2.2 集合 Collections"></a>2.2.2 集合 Collections</h3><p>集合（Collections）相当于 RDBMS （关系型数据库）中的表。ArangoDB中的集合中包含零个或多个文档。<br />相比于 RDBMS，必须要先定义列，然后才能将记录存储在表中，这样定义也称为模式。<br />ArangoDB默认是无模式的，即无需定义文档可以具有的属性，每个文档都可以具有完全不同的结构，并且仍然与其他文档一起存储在一个集合中。<br />除此之外，ArangoDB提供了Document的schema validation（模式验证）机制<br />（<a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/data-modeling-documents-schema-validation.html">具体参考</a>）<br />这种机制可以用来检查或限制ArangoDB支持的通用结构的自定义格式。</p>
<p>ArangoDB的集合分为两种类型：<br>● 文档集合 document collection，在图的上下文中也称为 顶点集合 （vertex collections ）<br>● 边集合 edge collection ，边集合也存储文档，但文档中会包含两个特殊的属性，分别是_from和 _to，用于创建文档之间的关系。<br>通常，存储在 Document集合中的两个文档（vertices）由存储在边集合中的文档（edge）连接。这是ArangoDB的图数据模型。遵循有向标记图的数学概念，除了边，不仅有标签，而且完整的 Documents。</p>
<h3 id="2-2-3-数据库-Databases"><a href="#2-2-3-数据库-Databases" class="headerlink" title="2.2.3 数据库 Databases"></a>2.2.3 数据库 Databases</h3><p>数据库（Databases）是集合（Collections）的 Set集合，这说明数据库是不可重复的。<br />数据库中存在着零个或多个集合，ArangoDB可拥有一个（默认有_system）或多个数据库，不同的数据库内部的数据（集合、文档）等都是相互隔离的。其中 __system是特殊的数据库，无法被删除。<br><a name="apZ5U"></a></p>
<h2 id="2-3-数据检索"><a href="#2-3-数据检索" class="headerlink" title="2.3 数据检索"></a>2.3 数据检索</h2><p><strong>查询</strong>（<strong>Queries）</strong>，用于根据特定标准过滤文档、计算新数据以及操作或删除现有文档。查询语句可以是用 ArangoDB 查询语言 （AQL）编写的 ( <a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/aql/index.html">AQL参考文档</a> ）<br /><strong>游标（Cursors）</strong>，用于迭代查询的结果，以便获得易于处理的批次，而不是所有数据。<br /><strong>索引（Indexes ）</strong>，用于加快搜索速度。有各种类型的索引，例如： <a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/indexing-persistent.html">persistent indexes</a> 和 <a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/indexing-geo.html">geo-spatial indexes</a>.<br><a name="ZcTac"></a></p>
<h1 id="三、ArangoDB-安装"><a href="#三、ArangoDB-安装" class="headerlink" title="三、ArangoDB 安装"></a>三、ArangoDB 安装</h1><hr>
<p>官方下载地址：<br />笔者这里选择的是 NSIS 软件包<br />（Windows版本以学习为主，官方推荐对于生产环境，强烈建议使用 Linux）<br />![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/54fd658f5259475f83d19cf1ce03cb70.png#">https://img-blog.csdnimg.cn/54fd658f5259475f83d19cf1ce03cb70.png#</a> &#x3D;50%x)<br><br />下载后进行安装：<br />![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/1ceb79b2ed58435aadb23efc84e5956e.png#">https://img-blog.csdnimg.cn/1ceb79b2ed58435aadb23efc84e5956e.png#</a> &#x3D;50%x)<br><br />安装时需要设置密码（其他配置暂时不修改，默认即可）：<br />![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/4a2e246dd2c24403be738afc8e55dba5.png#">https://img-blog.csdnimg.cn/4a2e246dd2c24403be738afc8e55dba5.png#</a> &#x3D;50%x)<br><br />安装后，ArangoDB 服务器会自动启动：<br /><img src="https://img-blog.csdnimg.cn/fd23fa9268ce4979ab396781f25604ea.png" srcset="/img/loading.gif" lazyload alt="在这里插入图片描述"></p>
<p>所以，安装即启动，这里通过URL可以访问到数据库的服务器：<a target="_blank" rel="noopener" href="http://localhost:8529/">http://localhost:8529/</a><br />![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/726e75702eac4bf080a04b861daca739.png#">https://img-blog.csdnimg.cn/726e75702eac4bf080a04b861daca739.png#</a> &#x3D;50%x)</p>
<p>注：如果没有自动启动，根据官方文档说明，手动启动可通过运行ArangoDB数据库目录 bin 文件目录下的 arangod.exe 程序，最好是以管理员身份运行。</p>
<p>这里登录的用户名默认为 root ，密码则为之前安装时设置的密码。<br />登录成功后，我们需要选择一个数据库来进行操作，官方提供了默认的 <code>_system</code> 数据库</p>
<p>![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/434a577788724fa18453945cb233f6c6.png#">https://img-blog.csdnimg.cn/434a577788724fa18453945cb233f6c6.png#</a> &#x3D;50%x)<br><br />选择数据库后的页面如下：<br /><img src="https://img-blog.csdnimg.cn/dc5f4f5dd033416c9b6278656a582de8.png" srcset="/img/loading.gif" lazyload alt="在这里插入图片描述"></p>
<p>拓展：通过终端查看 ArangoDB 版本</p>
<figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><code class="hljs bash">arangodb version<br></code></pre></td></tr></table></figure>
<p>![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/9ca1b4770b2849aab395f70650f2f53e.png#">https://img-blog.csdnimg.cn/9ca1b4770b2849aab395f70650f2f53e.png#</a> &#x3D;50%x)<br><br />通过终端查看 ArangoDB 帮助命令<br /><img src="https://img-blog.csdnimg.cn/6d24883b7d174d929c24215916ce9db1.png" srcset="/img/loading.gif" lazyload alt="在这里插入图片描述"></p>
<p>我们在官方下载的服务器版本是自带客户端的，接下来可通过终端命令连接本地的ArangoDB服务器：</p>
<figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><code class="hljs bash">arangosh <br></code></pre></td></tr></table></figure>
<p>输入命令后，回车确定然后输入密码即可。<br />![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/41aa79c5171046c7bae98228022e6c2d.png#">https://img-blog.csdnimg.cn/41aa79c5171046c7bae98228022e6c2d.png#</a> &#x3D;50%x)<br><br />这里默认进入的是自带的_system数据库，如果要连接其他的数据库则通过命令：</p>
<figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><code class="hljs shell">arangosh --server.username &quot;root&quot; --server.database 数据库名<br></code></pre></td></tr></table></figure>

<h1 id="四、ArangoDB-入门案例"><a href="#四、ArangoDB-入门案例" class="headerlink" title="四、ArangoDB 入门案例"></a>四、ArangoDB 入门案例</h1><hr>
<p>参考资料：<a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/getting-started.html">Getting Started | Manual | ArangoDB Documentation</a><br />根据官方文档介绍， ArangoDB入门案例主要分为以下几个步骤：</p>
<ol>
<li>安装并运行本地的ArangoDB服务器</li>
<li>使用 Web 界面进行交互</li>
<li>在数据库中存储示例数据</li>
<li>查询数据库再次以检索数据</li>
<li>编辑和删除现有数据</li>
</ol>
<p>其中 3，4，5  其实都是对数据进行增删改查的操作，这里可以看出 ArangoDB服务器是通过Web界面来进行操作的。</p>
<p><a name="BCTRs"></a></p>
<h2 id="4-1-安装与启动"><a href="#4-1-安装与启动" class="headerlink" title="4.1 安装与启动"></a>4.1 安装与启动</h2><p>参考之前的 ArangoDB安装部分。</p>
<p><a name="MDPAS"></a></p>
<h2 id="4-2-在Web界面交互"><a href="#4-2-在Web界面交互" class="headerlink" title="4.2 在Web界面交互"></a>4.2 在Web界面交互</h2><p><a name="MUgMp"></a></p>
<h3 id="4-2-1-添加集合"><a href="#4-2-1-添加集合" class="headerlink" title="4.2.1 添加集合"></a>4.2.1 添加集合</h3><p>![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/5300b0f7689e40d98372ade3476e2d09.png#">https://img-blog.csdnimg.cn/5300b0f7689e40d98372ade3476e2d09.png#</a> &#x3D;50%x)<br><br />设置集合的信息：<br /><br>![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/5c090dcfb0be411a8be6edf7c2333e12.png#">https://img-blog.csdnimg.cn/5c090dcfb0be411a8be6edf7c2333e12.png#</a> &#x3D;50%x)</p>
<p>创建文档</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><code class="hljs json"><span class="hljs-punctuation">&#123;</span><br>  <span class="hljs-attr">&quot;name&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;uni&quot;</span><span class="hljs-punctuation">,</span><br>  <span class="hljs-attr">&quot;age&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-number">22</span><span class="hljs-punctuation">,</span><br>  <span class="hljs-attr">&quot;hooby&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">[</span><span class="hljs-string">&quot;睡觉&quot;</span><span class="hljs-punctuation">,</span> <span class="hljs-string">&quot;吃饭&quot;</span><span class="hljs-punctuation">]</span><br><span class="hljs-punctuation">&#125;</span><br></code></pre></td></tr></table></figure>
<p>两种方式进行创建，第一种是通过JSON代码，这里不指定 _key，会自动生成。</p>
<p>![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/584a35d41a6d47d6824100b085764ad0.png#">https://img-blog.csdnimg.cn/584a35d41a6d47d6824100b085764ad0.png#</a> &#x3D;50%x)<br><br />第二种是编辑树形结构<br />![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/5c2dfaa2dffe44b5ab3d343a22845453.png#">https://img-blog.csdnimg.cn/5c2dfaa2dffe44b5ab3d343a22845453.png#</a> &#x3D;50%x)</p>
<p>创建成功后：<br /><img src="https://img-blog.csdnimg.cn/7f9dd83f8e3c4b68b7d1762ff0cc6789.png" srcset="/img/loading.gif" lazyload alt="在这里插入图片描述"></p>
<p><a name="qF4Ob"></a></p>
<h3 id="4-2-2-查询集合"><a href="#4-2-2-查询集合" class="headerlink" title="4.2.2 查询集合"></a>4.2.2 查询集合</h3><p>如果是刚使用ArangoDB数据库，那么对于AQL语句肯定不太熟悉，这里我们可以通过Web来展示官方提供的案例，然后根据需要修改案例中的部分代码：<br />![在这里插入图片描述](<a target="_blank" rel="noopener" href="https://img-blog.csdnimg.cn/49331be0921c4c8eba7437905474cc29.png#">https://img-blog.csdnimg.cn/49331be0921c4c8eba7437905474cc29.png#</a> &#x3D;50%x)<br><br />修改后的AQL语句如下：</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><code class="hljs json">FOR doc IN myDocument<br>  FILTER doc.name == &#x27;uni&#x27; and doc.age == <span class="hljs-number">22</span><br>  RETURN doc<br></code></pre></td></tr></table></figure>
<p>运行结果：<br /><img src="https://img-blog.csdnimg.cn/1ee7cbc65cc14d1089d44d44e49763de.png" srcset="/img/loading.gif" lazyload alt="在这里插入图片描述"></p>
<p><a name="v0CHD"></a></p>
<h3 id="4-2-3-修改集合"><a href="#4-2-3-修改集合" class="headerlink" title="4.2.3 修改集合"></a>4.2.3 修改集合</h3><p>通过Web界面来修改集合，这种方式不适合批量修改文档的情况。<br /></p>
<p><img src="https://img-blog.csdnimg.cn/f5fbc9f083094003b5af019c764259dc.gif#pic_center" srcset="/img/loading.gif" lazyload alt="在这里插入图片描述"></p>
<h3 id="4-4-4-删除集合"><a href="#4-4-4-删除集合" class="headerlink" title="4.4.4 删除集合"></a>4.4.4 删除集合</h3><p><img src="https://img-blog.csdnimg.cn/4ea338b50c7e4507ab1310d78c791ff5.gif#pic_center" srcset="/img/loading.gif" lazyload alt="在这里插入图片描述"></p>
<p>至此，ArangoDB的入门案例操作完毕。更多资料推荐参考官方：<a target="_blank" rel="noopener" href="https://www.arangodb.com/docs/stable/aql/tutorial-crud.html">官方说明文档</a>，笔者这里只是做个人的学习记录。</p>

                
              </div>
            
            <hr/>
            <div>
              <div class="post-metas my-3">
  
    <div class="post-meta mr-3 d-flex align-items-center">
      <i class="iconfont icon-category"></i>
      

<span class="category-chains">
  
  
    
      <span class="category-chain">
        
  <a href="/categories/%E6%95%B0%E6%8D%AE%E5%BA%93/" class="category-chain-item">数据库</a>
  
  

      </span>
    
  
</span>

    </div>
  
  
    <div class="post-meta">
      <i class="iconfont icon-tags"></i>
      
        <a href="/tags/ArangoDB/">#ArangoDB</a>
      
    </div>
  
</div>


              
  

  <div class="license-box my-3">
    <div class="license-title">
      <div>ArangoDB 笔记1 简介 _ ArangoDB 数据模型和概念 _ ArangoDB在Windows下的安装与使用 _ Web界面的增删改查</div>
      <div>http://example.com/2022/07/13/ArangoDB 笔记1 简介 _ ArangoDB 数据模型和概念 _ ArangoDB在Windows下的安装与使用 _ Web界面的增删改查/</div>
    </div>
    <div class="license-meta">
      
        <div class="license-meta-item">
          <div>作者</div>
          <div>John Doe</div>
        </div>
      
      
        <div class="license-meta-item license-meta-date">
          <div>发布于</div>
          <div>2022年7月13日</div>
        </div>
      
      
      <div class="license-meta-item">
        <div>许可协议</div>
        <div>
          
            
            
              <a target="_blank" href="https://creativecommons.org/licenses/by/4.0/">
              <span class="hint--top hint--rounded" aria-label="BY - 署名">
                <i class="iconfont icon-by"></i>
              </span>
              </a>
            
          
        </div>
      </div>
    </div>
    <div class="license-icon iconfont"></div>
  </div>



              
                <div class="post-prevnext my-3">
                  <article class="post-prev col-6">
                    
                    
                      <a href="/2022/07/16/Vue2%20%E5%AE%9E%E6%88%98%20%E5%9F%BA%E4%BA%8E%20Elmenet-UI%20%E7%9A%84%20%E5%8D%95%E9%A1%B5%E9%9D%A2%E5%BC%80%E5%8F%91%20%E7%94%A8%E6%88%B7%E4%BF%A1%E6%81%AF%E5%A2%9E%E5%88%A0%E6%94%B9%E6%9F%A5%20_%20%E6%94%AF%E6%8C%81%E5%88%86%E9%A1%B5%E6%9F%A5%E8%AF%A2%20_%20%E8%87%AA%E5%8A%A8%E7%99%BB%E5%BD%95/" title="Vue2 实战 基于 Elmenet-UI 的 单页面开发 用户信息增删改查 _ 支持分页查询 _ 自动登录">
                        <i class="iconfont icon-arrowleft"></i>
                        <span class="hidden-mobile">Vue2 实战 基于 Elmenet-UI 的 单页面开发 用户信息增删改查 _ 支持分页查询 _ 自动登录</span>
                        <span class="visible-mobile">上一篇</span>
                      </a>
                    
                  </article>
                  <article class="post-next col-6">
                    
                    
                      <a href="/2022/07/12/ArangoDB%20%E7%AC%94%E8%AE%B02%20AQL%20Java%20API%20_%20AQL%E8%AF%AD%E6%B3%95%20_%20%E4%BD%BF%E7%94%A8Java%E8%BF%9E%E6%8E%A5ArangoDB/" title="ArangoDB 笔记2 AQL Java API _ AQL语法 _ 使用Java连接ArangoDB">
                        <span class="hidden-mobile">ArangoDB 笔记2 AQL Java API _ AQL语法 _ 使用Java连接ArangoDB</span>
                        <span class="visible-mobile">下一篇</span>
                        <i class="iconfont icon-arrowright"></i>
                      </a>
                    
                  </article>
                </div>
              
            </div>

            
          </article>
        </div>
      </div>
    </div>

    <div class="side-col d-none d-lg-block col-lg-2">
      
  <aside class="sidebar" style="margin-left: -1rem">
    <div id="toc">
  <p class="toc-header"><i class="iconfont icon-list"></i>&nbsp;目录</p>
  <div class="toc-body" id="toc-body"></div>
</div>



  </aside>


    </div>
  </div>
</div>





  



  



  



  



  







    

    
      <a id="scroll-top-button" aria-label="TOP" href="#" role="button">
        <i class="iconfont icon-arrowup" aria-hidden="true"></i>
      </a>
    

    
      <div class="modal fade" id="modalSearch" tabindex="-1" role="dialog" aria-labelledby="ModalLabel"
     aria-hidden="true">
  <div class="modal-dialog modal-dialog-scrollable modal-lg" role="document">
    <div class="modal-content">
      <div class="modal-header text-center">
        <h4 class="modal-title w-100 font-weight-bold">搜索</h4>
        <button type="button" id="local-search-close" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body mx-3">
        <div class="md-form mb-5">
          <input type="text" id="local-search-input" class="form-control validate">
          <label data-error="x" data-success="v" for="local-search-input">关键词</label>
        </div>
        <div class="list-group" id="local-search-result"></div>
      </div>
    </div>
  </div>
</div>

    

    
  </main>

  <footer>
    <div class="footer-inner">
  
    <div class="footer-content">
       <a href="https://hexo.io" target="_blank" rel="nofollow noopener"><span>Hexo</span></a> <i class="iconfont icon-love"></i> <a href="https://github.com/fluid-dev/hexo-theme-fluid" target="_blank" rel="nofollow noopener"><span>Fluid</span></a> 
    </div>
  
  
  
  
</div>

  </footer>

  <!-- Scripts -->
  
  <script  src="https://lib.baomitu.com/nprogress/0.2.0/nprogress.min.js" ></script>
  <link  rel="stylesheet" href="https://lib.baomitu.com/nprogress/0.2.0/nprogress.min.css" />

  <script>
    NProgress.configure({"showSpinner":false,"trickleSpeed":100})
    NProgress.start()
    window.addEventListener('load', function() {
      NProgress.done();
    })
  </script>


<script  src="https://lib.baomitu.com/jquery/3.6.0/jquery.min.js" ></script>
<script  src="https://lib.baomitu.com/twitter-bootstrap/4.6.1/js/bootstrap.min.js" ></script>
<script  src="/js/events.js" ></script>
<script  src="/js/plugins.js" ></script>


  <script  src="https://lib.baomitu.com/typed.js/2.0.12/typed.min.js" ></script>
  <script>
    (function (window, document) {
      var typing = Fluid.plugins.typing;
      var subtitle = document.getElementById('subtitle');
      if (!subtitle || !typing) {
        return;
      }
      var text = subtitle.getAttribute('data-typed-text');
      
        typing(text);
      
    })(window, document);
  </script>




  
    <script  src="/js/img-lazyload.js" ></script>
  




  
<script>
  Fluid.utils.createScript('https://lib.baomitu.com/tocbot/4.18.2/tocbot.min.js', function() {
    var toc = jQuery('#toc');
    if (toc.length === 0 || !window.tocbot) { return; }
    var boardCtn = jQuery('#board-ctn');
    var boardTop = boardCtn.offset().top;

    window.tocbot.init({
      tocSelector     : '#toc-body',
      contentSelector : '.markdown-body',
      headingSelector : CONFIG.toc.headingSelector || 'h1,h2,h3,h4,h5,h6',
      linkClass       : 'tocbot-link',
      activeLinkClass : 'tocbot-active-link',
      listClass       : 'tocbot-list',
      isCollapsedClass: 'tocbot-is-collapsed',
      collapsibleClass: 'tocbot-is-collapsible',
      collapseDepth   : CONFIG.toc.collapseDepth || 0,
      scrollSmooth    : true,
      headingsOffset  : -boardTop
    });
    if (toc.find('.toc-list-item').length > 0) {
      toc.css('visibility', 'visible');
    }
  });
</script>


  <script src=https://lib.baomitu.com/clipboard.js/2.0.10/clipboard.min.js></script>

  <script>Fluid.plugins.codeWidget();</script>


  
<script>
  Fluid.utils.createScript('https://lib.baomitu.com/anchor-js/4.3.1/anchor.min.js', function() {
    window.anchors.options = {
      placement: CONFIG.anchorjs.placement,
      visible  : CONFIG.anchorjs.visible
    };
    if (CONFIG.anchorjs.icon) {
      window.anchors.options.icon = CONFIG.anchorjs.icon;
    }
    var el = (CONFIG.anchorjs.element || 'h1,h2,h3,h4,h5,h6').split(',');
    var res = [];
    for (var item of el) {
      res.push('.markdown-body > ' + item.trim());
    }
    if (CONFIG.anchorjs.placement === 'left') {
      window.anchors.options.class = 'anchorjs-link-left';
    }
    window.anchors.add(res.join(', '));
  });
</script>


  
<script>
  Fluid.utils.createScript('https://lib.baomitu.com/fancybox/3.5.7/jquery.fancybox.min.js', function() {
    Fluid.plugins.fancyBox();
  });
</script>


  <script>Fluid.plugins.imageCaption();</script>

  <script  src="/js/local-search.js" ></script>





<!-- 主题的启动项，将它保持在最底部 -->
<!-- the boot of the theme, keep it at the bottom -->
<script  src="/js/boot.js" ></script>


  

  <noscript>
    <div class="noscript-warning">博客在允许 JavaScript 运行的环境下浏览效果更佳</div>
  </noscript>
</body>
</html>
